{
 "cells": [
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## Hyperparameter optimization using hyperopt"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 1,
   "metadata": {},
   "outputs": [
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "Using TensorFlow backend.\n"
     ]
    }
   ],
   "source": [
    "from heartnet_v1 import heartnet\n",
    "import ast # for list import\n",
    "import numpy as np\n",
    "import matplotlib as mpl\n",
    "import matplotlib.pyplot as plt\n",
    "from keras.losses import binary_crossentropy\n",
    "from keras import backend as K"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 2,
   "metadata": {
    "collapsed": true
   },
   "outputs": [],
   "source": [
    "foldname='fold0_noFIR'"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 4,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "values initialized\n"
     ]
    }
   ],
   "source": [
    "random_seed=1\n",
    "batch_size=64\n",
    "fold_dir='/media/taufiq/Data/heart_sound/feature/potes_1DCNN/balancedCV/folds/'\n",
    "log_dir= '/media/taufiq/Data/heart_sound/Heart_Sound/codes/logs/'\n",
    "bn_momentum = 0.99\n",
    "eps= 1.1e-5\n",
    "bias=False\n",
    "l2_reg=0.\n",
    "# l2_reg_dense=0.\n",
    "kernel_size=5\n",
    "maxnorm=10000.\n",
    "dropout_rate=0.5\n",
    "dropout_rate_dense=0.\n",
    "padding='valid'\n",
    "activation_function='relu'\n",
    "subsam=2\n",
    "load_path=False\n",
    "lr=0.0012843784 \n",
    "lr_decay=0.0001132885\n",
    "FIR_train=True\n",
    "num_filt=(8,4)\n",
    "num_dense=20\n",
    "params = dict()\n",
    "print \"values initialized\""
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 5,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "(80531, 2500, 1)\n",
      "(80531, 1)\n",
      "(7324, 2500, 1)\n",
      "(7324, 1)\n",
      "loading complete\n"
     ]
    }
   ],
   "source": [
    "import tables\n",
    "from heartnet_v1 import reshape_folds\n",
    "feat = tables.open_file(fold_dir + foldname + '.mat')\n",
    "x_train = feat.root.trainX[:]\n",
    "y_train = feat.root.trainY[0, :]\n",
    "x_val = feat.root.valX[:]\n",
    "y_val = feat.root.valY[0, :]\n",
    "train_parts = feat.root.train_parts[:]\n",
    "val_parts = feat.root.val_parts[0, :]\n",
    "\n",
    "for i in range(0, y_train.shape[0]):\n",
    "    if y_train[i] == -1:\n",
    "        y_train[i] = 0  ## Label 0 for normal 1 for abnormal\n",
    "for i in range(0, y_val.shape[0]):\n",
    "    if y_val[i] == -1:\n",
    "        y_val[i] = 0\n",
    "x_train, y_train, x_val, y_val = reshape_folds(x_train, x_val, y_train, y_val)\n",
    "print \"loading complete\""
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 34,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "{0: 0.61954548252092567, 1: 2.5912542634661175}"
      ]
     },
     "execution_count": 34,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "import numpy as np\n",
    "classes =np.unique(y_train)\n",
    "num_samples = np.float32(len(y_train))\n",
    "n_classes = np.float32(len(classes))\n",
    "num_bin=np.hstack([sum(y_train==0),sum(y_train==1)])\n",
    "class_weights = {i: (num_samples / (n_classes * num_bin[i])) for i in range(2)}\n",
    "class_weights"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 16,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<matplotlib.figure.Figure at 0x7ff10a3ef2d0>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "import matplotlib.pyplot as plt\n",
    "import matplotlib as mpl\n",
    "mpl.rcParams['figure.figsize']=(30,10)\n",
    "plt.plot(x_train[0,:1000],linewidth=7.0)\n",
    "plt.show()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 9,
   "metadata": {
    "collapsed": true
   },
   "outputs": [],
   "source": [
    "def objective(args):\n",
    "    l2_reg_dense = args\n",
    "    print \"args {}\".format(args)\n",
    "    model = heartnet(activation_function, bn_momentum, bias, dropout_rate, dropout_rate_dense,\n",
    "                 eps, kernel_size, l2_reg, l2_reg_dense, load_path, lr, lr_decay, maxnorm,\n",
    "                 padding, random_seed, subsam, num_filt, num_dense, FIR_train)\n",
    "    model.fit(x_train, y_train,\n",
    "          batch_size=256,\n",
    "          epochs=20,\n",
    "          shuffle=True,\n",
    "          verbose=1,\n",
    "          initial_epoch=0)\n",
    "    y_pred = model.predict(x_val)\n",
    "    loss = K.eval(K.mean(K.variable(K.eval(binary_crossentropy(K.variable(y_val),K.variable(y_pred))))))\n",
    "    params[str(args)]=loss\n",
    "    print loss\n",
    "    return loss    "
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 10,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "args 0.0496942947446\n",
      "Epoch 1/20\n",
      "80531/80531 [==============================] - 17s 214us/step - loss: 0.4761 - acc: 0.8314\n",
      "Epoch 2/20\n",
      "80531/80531 [==============================] - 17s 206us/step - loss: 0.3703 - acc: 0.8677\n",
      "Epoch 3/20\n",
      "80531/80531 [==============================] - 16s 205us/step - loss: 0.3445 - acc: 0.8741\n",
      "Epoch 4/20\n",
      "80531/80531 [==============================] - 17s 205us/step - loss: 0.3378 - acc: 0.8797\n",
      "Epoch 5/20\n",
      "80531/80531 [==============================] - 17s 205us/step - loss: 0.3369 - acc: 0.8842\n",
      "Epoch 6/20\n",
      "80531/80531 [==============================] - 17s 206us/step - loss: 0.3180 - acc: 0.8891\n",
      "Epoch 7/20\n",
      "80531/80531 [==============================] - 17s 207us/step - loss: 0.3206 - acc: 0.8877\n",
      "Epoch 8/20\n",
      "80531/80531 [==============================] - 17s 206us/step - loss: 0.3120 - acc: 0.8906\n",
      "Epoch 9/20\n",
      "80531/80531 [==============================] - 17s 206us/step - loss: 0.3114 - acc: 0.8908\n",
      "Epoch 10/20\n",
      "80531/80531 [==============================] - 16s 205us/step - loss: 0.3056 - acc: 0.8904\n",
      "Epoch 11/20\n",
      "80531/80531 [==============================] - 17s 206us/step - loss: 0.2986 - acc: 0.8934\n",
      "Epoch 12/20\n",
      "80531/80531 [==============================] - 17s 206us/step - loss: 0.2970 - acc: 0.8936\n",
      "Epoch 13/20\n",
      "80531/80531 [==============================] - 17s 206us/step - loss: 0.2929 - acc: 0.8964\n",
      "Epoch 14/20\n",
      "80531/80531 [==============================] - 17s 207us/step - loss: 0.2939 - acc: 0.8957\n",
      "Epoch 15/20\n",
      "80531/80531 [==============================] - 17s 208us/step - loss: 0.2835 - acc: 0.8968\n",
      "Epoch 16/20\n",
      "80531/80531 [==============================] - 17s 209us/step - loss: 0.2812 - acc: 0.8977\n",
      "Epoch 17/20\n",
      "80531/80531 [==============================] - 17s 206us/step - loss: 0.2826 - acc: 0.8974\n",
      "Epoch 18/20\n",
      "80531/80531 [==============================] - 17s 207us/step - loss: 0.2809 - acc: 0.8983\n",
      "Epoch 19/20\n",
      "80531/80531 [==============================] - 17s 209us/step - loss: 0.2753 - acc: 0.8985\n",
      "Epoch 20/20\n",
      "80531/80531 [==============================] - 17s 207us/step - loss: 0.2754 - acc: 0.9001\n",
      "0.523123\n",
      "args 0.0458420875631\n",
      "Epoch 1/20\n",
      "80531/80531 [==============================] - 18s 220us/step - loss: 0.4684 - acc: 0.8374\n",
      "Epoch 2/20\n",
      "80531/80531 [==============================] - 17s 211us/step - loss: 0.3466 - acc: 0.8765\n",
      "Epoch 3/20\n",
      "80531/80531 [==============================] - 17s 208us/step - loss: 0.3397 - acc: 0.8846\n",
      "Epoch 4/20\n",
      "80531/80531 [==============================] - 17s 206us/step - loss: 0.3316 - acc: 0.8823\n",
      "Epoch 5/20\n",
      "80531/80531 [==============================] - 17s 206us/step - loss: 0.3260 - acc: 0.8874\n",
      "Epoch 6/20\n",
      "80531/80531 [==============================] - 17s 206us/step - loss: 0.3217 - acc: 0.8862\n",
      "Epoch 7/20\n",
      "80531/80531 [==============================] - 17s 206us/step - loss: 0.3148 - acc: 0.8890\n",
      "Epoch 8/20\n",
      "80531/80531 [==============================] - 17s 206us/step - loss: 0.3096 - acc: 0.8907\n",
      "Epoch 9/20\n",
      "80531/80531 [==============================] - 17s 206us/step - loss: 0.3030 - acc: 0.8923\n",
      "Epoch 10/20\n",
      "80531/80531 [==============================] - 17s 206us/step - loss: 0.2999 - acc: 0.8939\n",
      "Epoch 11/20\n",
      "80531/80531 [==============================] - 17s 206us/step - loss: 0.2957 - acc: 0.8946\n",
      "Epoch 12/20\n",
      "80531/80531 [==============================] - 17s 206us/step - loss: 0.2927 - acc: 0.8947\n",
      "Epoch 13/20\n",
      "80531/80531 [==============================] - 17s 206us/step - loss: 0.2857 - acc: 0.8954\n",
      "Epoch 14/20\n",
      "80531/80531 [==============================] - 17s 206us/step - loss: 0.2868 - acc: 0.8964\n",
      "Epoch 15/20\n",
      "80531/80531 [==============================] - 17s 207us/step - loss: 0.2822 - acc: 0.8978\n",
      "Epoch 16/20\n",
      "80531/80531 [==============================] - 17s 207us/step - loss: 0.2824 - acc: 0.8985\n",
      "Epoch 17/20\n",
      "80531/80531 [==============================] - 17s 206us/step - loss: 0.2834 - acc: 0.8986\n",
      "Epoch 18/20\n",
      "80531/80531 [==============================] - 17s 206us/step - loss: 0.2732 - acc: 0.9016\n",
      "Epoch 19/20\n",
      "80531/80531 [==============================] - 17s 208us/step - loss: 0.2762 - acc: 0.8991\n",
      "Epoch 20/20\n",
      "80531/80531 [==============================] - 17s 206us/step - loss: 0.2709 - acc: 0.8993\n",
      "0.519645\n",
      "args 0.04162758016\n",
      "Epoch 1/20\n",
      "80531/80531 [==============================] - 18s 223us/step - loss: 0.4763 - acc: 0.8314\n",
      "Epoch 2/20\n",
      "80531/80531 [==============================] - 17s 210us/step - loss: 0.3511 - acc: 0.8702\n",
      "Epoch 3/20\n",
      "80531/80531 [==============================] - 17s 208us/step - loss: 0.3421 - acc: 0.8821\n",
      "Epoch 4/20\n",
      "80531/80531 [==============================] - 17s 210us/step - loss: 0.3392 - acc: 0.8839\n",
      "Epoch 5/20\n",
      "80531/80531 [==============================] - 17s 209us/step - loss: 0.3243 - acc: 0.8863\n",
      "Epoch 6/20\n",
      "80531/80531 [==============================] - 17s 210us/step - loss: 0.3115 - acc: 0.8912\n",
      "Epoch 7/20\n",
      "80531/80531 [==============================] - 17s 210us/step - loss: 0.3110 - acc: 0.8903\n",
      "Epoch 8/20\n",
      "80531/80531 [==============================] - 17s 207us/step - loss: 0.3068 - acc: 0.8929\n",
      "Epoch 9/20\n",
      "80531/80531 [==============================] - 17s 209us/step - loss: 0.2990 - acc: 0.8935\n",
      "Epoch 10/20\n",
      "80531/80531 [==============================] - 17s 210us/step - loss: 0.2978 - acc: 0.8941\n",
      "Epoch 11/20\n",
      "80531/80531 [==============================] - 17s 210us/step - loss: 0.2937 - acc: 0.8952\n",
      "Epoch 12/20\n",
      "80531/80531 [==============================] - 17s 213us/step - loss: 0.2901 - acc: 0.8959\n",
      "Epoch 13/20\n",
      "80531/80531 [==============================] - 17s 213us/step - loss: 0.2886 - acc: 0.8951\n",
      "Epoch 14/20\n",
      "80531/80531 [==============================] - 17s 212us/step - loss: 0.2817 - acc: 0.8974\n",
      "Epoch 15/20\n",
      "80531/80531 [==============================] - 17s 210us/step - loss: 0.2808 - acc: 0.8979\n",
      "Epoch 16/20\n",
      "80531/80531 [==============================] - 17s 210us/step - loss: 0.2787 - acc: 0.8990\n",
      "Epoch 17/20\n",
      "80531/80531 [==============================] - 17s 210us/step - loss: 0.2788 - acc: 0.8973\n",
      "Epoch 18/20\n",
      "80531/80531 [==============================] - 17s 211us/step - loss: 0.2746 - acc: 0.8982\n",
      "Epoch 19/20\n",
      "80531/80531 [==============================] - 17s 212us/step - loss: 0.2748 - acc: 0.8984\n",
      "Epoch 20/20\n",
      "80531/80531 [==============================] - 17s 210us/step - loss: 0.2709 - acc: 0.8997\n",
      "0.519578\n",
      "args 0.0405940599121\n",
      "Epoch 1/20\n",
      "80531/80531 [==============================] - 18s 224us/step - loss: 0.4818 - acc: 0.8258\n",
      "Epoch 2/20\n",
      "80531/80531 [==============================] - 17s 208us/step - loss: 0.3455 - acc: 0.8747\n",
      "Epoch 3/20\n",
      "80531/80531 [==============================] - 17s 209us/step - loss: 0.3415 - acc: 0.8803\n",
      "Epoch 4/20\n",
      "80531/80531 [==============================] - 17s 208us/step - loss: 0.3292 - acc: 0.8849\n",
      "Epoch 5/20\n",
      "80531/80531 [==============================] - 17s 209us/step - loss: 0.3154 - acc: 0.8906\n",
      "Epoch 6/20\n",
      "80531/80531 [==============================] - 17s 208us/step - loss: 0.3170 - acc: 0.8896\n",
      "Epoch 7/20\n",
      "80531/80531 [==============================] - 17s 208us/step - loss: 0.3053 - acc: 0.8921\n",
      "Epoch 8/20\n",
      "80531/80531 [==============================] - 17s 208us/step - loss: 0.3012 - acc: 0.8922\n",
      "Epoch 9/20\n",
      "80531/80531 [==============================] - 17s 209us/step - loss: 0.3053 - acc: 0.8949\n",
      "Epoch 10/20\n",
      "80531/80531 [==============================] - 17s 211us/step - loss: 0.2914 - acc: 0.8954\n",
      "Epoch 11/20\n",
      "80531/80531 [==============================] - 17s 208us/step - loss: 0.2885 - acc: 0.8972\n",
      "Epoch 12/20\n",
      "80531/80531 [==============================] - 17s 209us/step - loss: 0.2881 - acc: 0.8975\n",
      "Epoch 13/20\n",
      "80531/80531 [==============================] - 17s 208us/step - loss: 0.2808 - acc: 0.8993\n",
      "Epoch 14/20\n",
      "80531/80531 [==============================] - 17s 209us/step - loss: 0.2794 - acc: 0.8986\n",
      "Epoch 15/20\n",
      "80531/80531 [==============================] - 17s 208us/step - loss: 0.2781 - acc: 0.9006\n",
      "Epoch 16/20\n",
      "80531/80531 [==============================] - 17s 210us/step - loss: 0.2776 - acc: 0.9001\n",
      "Epoch 17/20\n",
      "80531/80531 [==============================] - 17s 209us/step - loss: 0.2760 - acc: 0.9024\n",
      "Epoch 18/20\n",
      "80531/80531 [==============================] - 17s 208us/step - loss: 0.2685 - acc: 0.9027\n",
      "Epoch 19/20\n",
      "80531/80531 [==============================] - 17s 206us/step - loss: 0.2690 - acc: 0.9032\n",
      "Epoch 20/20\n",
      "80531/80531 [==============================] - 17s 206us/step - loss: 0.2699 - acc: 0.9022\n",
      "0.542161\n",
      "args 0.0987612037451\n",
      "Epoch 1/20\n",
      "80531/80531 [==============================] - 18s 222us/step - loss: 0.5338 - acc: 0.8353\n",
      "Epoch 2/20\n",
      "80531/80531 [==============================] - 17s 206us/step - loss: 0.3843 - acc: 0.8693\n",
      "Epoch 3/20\n",
      "80531/80531 [==============================] - 17s 205us/step - loss: 0.3794 - acc: 0.8767\n",
      "Epoch 4/20\n",
      "80531/80531 [==============================] - 17s 206us/step - loss: 0.3559 - acc: 0.8796\n",
      "Epoch 5/20\n",
      "80531/80531 [==============================] - 16s 205us/step - loss: 0.3380 - acc: 0.8836\n",
      "Epoch 6/20\n",
      "80531/80531 [==============================] - 17s 205us/step - loss: 0.3289 - acc: 0.8848\n",
      "Epoch 7/20\n",
      "80531/80531 [==============================] - 16s 204us/step - loss: 0.3198 - acc: 0.8869\n",
      "Epoch 8/20\n",
      "80531/80531 [==============================] - 17s 205us/step - loss: 0.3241 - acc: 0.8868\n",
      "Epoch 9/20\n",
      "80531/80531 [==============================] - 17s 205us/step - loss: 0.3151 - acc: 0.8873\n",
      "Epoch 10/20\n",
      "80531/80531 [==============================] - 17s 208us/step - loss: 0.3078 - acc: 0.8913\n",
      "Epoch 11/20\n",
      "80531/80531 [==============================] - 17s 207us/step - loss: 0.3001 - acc: 0.8915\n",
      "Epoch 12/20\n",
      "80531/80531 [==============================] - 17s 208us/step - loss: 0.3034 - acc: 0.8902\n",
      "Epoch 13/20\n",
      "80531/80531 [==============================] - 17s 207us/step - loss: 0.3024 - acc: 0.8929\n",
      "Epoch 14/20\n",
      "80531/80531 [==============================] - 17s 207us/step - loss: 0.3014 - acc: 0.8929\n",
      "Epoch 15/20\n",
      "80531/80531 [==============================] - 17s 207us/step - loss: 0.2940 - acc: 0.8938\n",
      "Epoch 16/20\n",
      "80531/80531 [==============================] - 17s 206us/step - loss: 0.2886 - acc: 0.8953\n",
      "Epoch 17/20\n",
      "80531/80531 [==============================] - 17s 207us/step - loss: 0.2882 - acc: 0.8956\n",
      "Epoch 18/20\n",
      "80531/80531 [==============================] - 17s 207us/step - loss: 0.2859 - acc: 0.8965\n",
      "Epoch 19/20\n",
      "80531/80531 [==============================] - 17s 207us/step - loss: 0.2809 - acc: 0.8976\n",
      "Epoch 20/20\n",
      "80531/80531 [==============================] - 17s 207us/step - loss: 0.2859 - acc: 0.8969\n",
      "0.527784\n",
      "args 0.066960477561\n",
      "Epoch 1/20\n",
      "80531/80531 [==============================] - 18s 222us/step - loss: 0.4854 - acc: 0.8441\n",
      "Epoch 2/20\n",
      "80531/80531 [==============================] - 16s 205us/step - loss: 0.3666 - acc: 0.8727\n",
      "Epoch 3/20\n",
      "80531/80531 [==============================] - 17s 206us/step - loss: 0.3551 - acc: 0.8776\n",
      "Epoch 4/20\n",
      "80531/80531 [==============================] - 17s 205us/step - loss: 0.3449 - acc: 0.8830\n",
      "Epoch 5/20\n",
      "80531/80531 [==============================] - 17s 205us/step - loss: 0.3324 - acc: 0.8850\n",
      "Epoch 6/20\n",
      "80531/80531 [==============================] - 17s 206us/step - loss: 0.3272 - acc: 0.8871\n",
      "Epoch 7/20\n",
      "80531/80531 [==============================] - 17s 208us/step - loss: 0.3228 - acc: 0.8884\n",
      "Epoch 8/20\n",
      "80531/80531 [==============================] - 17s 206us/step - loss: 0.3205 - acc: 0.8900\n",
      "Epoch 9/20\n",
      "80531/80531 [==============================] - 17s 209us/step - loss: 0.3075 - acc: 0.8923\n",
      "Epoch 10/20\n",
      "80531/80531 [==============================] - 17s 209us/step - loss: 0.3067 - acc: 0.8925\n",
      "Epoch 11/20\n",
      "80531/80531 [==============================] - 17s 215us/step - loss: 0.3025 - acc: 0.8936\n",
      "Epoch 12/20\n",
      "80531/80531 [==============================] - 17s 207us/step - loss: 0.2972 - acc: 0.8944\n",
      "Epoch 13/20\n",
      "80531/80531 [==============================] - 17s 207us/step - loss: 0.2952 - acc: 0.8956\n",
      "Epoch 14/20\n",
      "80531/80531 [==============================] - 17s 208us/step - loss: 0.2935 - acc: 0.8957\n",
      "Epoch 15/20\n",
      "80531/80531 [==============================] - 17s 207us/step - loss: 0.2909 - acc: 0.8962\n",
      "Epoch 16/20\n",
      "80531/80531 [==============================] - 17s 209us/step - loss: 0.2917 - acc: 0.8977\n",
      "Epoch 17/20\n",
      "80531/80531 [==============================] - 17s 208us/step - loss: 0.2838 - acc: 0.8971\n",
      "Epoch 18/20\n",
      "80531/80531 [==============================] - 17s 207us/step - loss: 0.2789 - acc: 0.8994\n",
      "Epoch 19/20\n",
      "80531/80531 [==============================] - 17s 207us/step - loss: 0.2798 - acc: 0.8991\n",
      "Epoch 20/20\n",
      "80531/80531 [==============================] - 17s 209us/step - loss: 0.2814 - acc: 0.8968\n",
      "0.550563\n",
      "args 0.0486491106509\n",
      "Epoch 1/20\n",
      "80531/80531 [==============================] - 18s 226us/step - loss: 0.4582 - acc: 0.8437\n",
      "Epoch 2/20\n",
      "80531/80531 [==============================] - 17s 207us/step - loss: 0.3477 - acc: 0.8726\n",
      "Epoch 3/20\n",
      "80531/80531 [==============================] - 17s 207us/step - loss: 0.3333 - acc: 0.8800\n",
      "Epoch 4/20\n",
      "80531/80531 [==============================] - 17s 206us/step - loss: 0.3316 - acc: 0.8823\n",
      "Epoch 5/20\n",
      "80531/80531 [==============================] - 17s 207us/step - loss: 0.3234 - acc: 0.8835\n",
      "Epoch 6/20\n",
      "80531/80531 [==============================] - 17s 207us/step - loss: 0.3241 - acc: 0.8845\n",
      "Epoch 7/20\n",
      "80531/80531 [==============================] - 17s 208us/step - loss: 0.3090 - acc: 0.8867\n",
      "Epoch 8/20\n",
      "80531/80531 [==============================] - 17s 208us/step - loss: 0.3087 - acc: 0.8882\n",
      "Epoch 9/20\n",
      "80531/80531 [==============================] - 17s 206us/step - loss: 0.3023 - acc: 0.8880\n",
      "Epoch 10/20\n",
      "80531/80531 [==============================] - 17s 206us/step - loss: 0.2959 - acc: 0.8924\n",
      "Epoch 11/20\n",
      "80531/80531 [==============================] - 17s 208us/step - loss: 0.2936 - acc: 0.8914\n",
      "Epoch 12/20\n",
      "80531/80531 [==============================] - 17s 207us/step - loss: 0.2935 - acc: 0.8923\n",
      "Epoch 13/20\n",
      "80531/80531 [==============================] - 17s 209us/step - loss: 0.2889 - acc: 0.8905\n",
      "Epoch 14/20\n",
      "80531/80531 [==============================] - 17s 206us/step - loss: 0.2821 - acc: 0.8933\n",
      "Epoch 15/20\n",
      "80531/80531 [==============================] - 17s 206us/step - loss: 0.2826 - acc: 0.8937\n",
      "Epoch 16/20\n",
      "80531/80531 [==============================] - 17s 206us/step - loss: 0.2825 - acc: 0.8945\n",
      "Epoch 17/20\n",
      "80531/80531 [==============================] - 17s 207us/step - loss: 0.2755 - acc: 0.8953\n",
      "Epoch 18/20\n",
      "80531/80531 [==============================] - 17s 207us/step - loss: 0.2799 - acc: 0.8947\n",
      "Epoch 19/20\n",
      "80531/80531 [==============================] - 17s 207us/step - loss: 0.2733 - acc: 0.8957\n",
      "Epoch 20/20\n",
      "80531/80531 [==============================] - 17s 209us/step - loss: 0.2751 - acc: 0.8952\n",
      "0.518104\n",
      "args 0.0698974397035\n",
      "Epoch 1/20\n",
      "80531/80531 [==============================] - 18s 227us/step - loss: 0.5007 - acc: 0.8343\n",
      "Epoch 2/20\n",
      "80531/80531 [==============================] - 17s 208us/step - loss: 0.3700 - acc: 0.8666\n",
      "Epoch 3/20\n",
      "80531/80531 [==============================] - 17s 207us/step - loss: 0.3668 - acc: 0.8721\n",
      "Epoch 4/20\n",
      "80531/80531 [==============================] - 17s 208us/step - loss: 0.3524 - acc: 0.8799\n",
      "Epoch 5/20\n",
      "80531/80531 [==============================] - 17s 209us/step - loss: 0.3395 - acc: 0.8804\n",
      "Epoch 6/20\n",
      "80531/80531 [==============================] - 17s 207us/step - loss: 0.3359 - acc: 0.8819\n",
      "Epoch 7/20\n",
      "80531/80531 [==============================] - 17s 208us/step - loss: 0.3311 - acc: 0.8850\n",
      "Epoch 8/20\n",
      "80531/80531 [==============================] - 17s 209us/step - loss: 0.3128 - acc: 0.8856\n",
      "Epoch 9/20\n",
      "80531/80531 [==============================] - 17s 206us/step - loss: 0.3106 - acc: 0.8884\n",
      "Epoch 10/20\n",
      "80531/80531 [==============================] - 17s 207us/step - loss: 0.3045 - acc: 0.8903\n",
      "Epoch 11/20\n",
      "80531/80531 [==============================] - 17s 207us/step - loss: 0.3063 - acc: 0.8906\n",
      "Epoch 12/20\n",
      "80531/80531 [==============================] - 17s 208us/step - loss: 0.2985 - acc: 0.8920\n",
      "Epoch 13/20\n",
      "80531/80531 [==============================] - 17s 208us/step - loss: 0.2979 - acc: 0.8922\n",
      "Epoch 14/20\n",
      "80531/80531 [==============================] - 17s 210us/step - loss: 0.2946 - acc: 0.8936\n",
      "Epoch 15/20\n",
      "80531/80531 [==============================] - 17s 211us/step - loss: 0.2894 - acc: 0.8944\n",
      "Epoch 16/20\n",
      "80531/80531 [==============================] - 17s 208us/step - loss: 0.2887 - acc: 0.8935\n",
      "Epoch 17/20\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "80531/80531 [==============================] - 17s 206us/step - loss: 0.2862 - acc: 0.8955\n",
      "Epoch 18/20\n",
      "80531/80531 [==============================] - 17s 206us/step - loss: 0.2823 - acc: 0.8957\n",
      "Epoch 19/20\n",
      "80531/80531 [==============================] - 17s 206us/step - loss: 0.2824 - acc: 0.8948\n",
      "Epoch 20/20\n",
      "80531/80531 [==============================] - 17s 206us/step - loss: 0.2832 - acc: 0.8938\n",
      "0.548516\n",
      "args 0.0724329105161\n",
      "Epoch 1/20\n",
      "80531/80531 [==============================] - 18s 229us/step - loss: 0.4826 - acc: 0.8403\n",
      "Epoch 2/20\n",
      "80531/80531 [==============================] - 17s 206us/step - loss: 0.3763 - acc: 0.8692\n",
      "Epoch 3/20\n",
      "80531/80531 [==============================] - 17s 207us/step - loss: 0.3544 - acc: 0.8769\n",
      "Epoch 4/20\n",
      "80531/80531 [==============================] - 17s 207us/step - loss: 0.3434 - acc: 0.8814\n",
      "Epoch 5/20\n",
      "80531/80531 [==============================] - 17s 208us/step - loss: 0.3313 - acc: 0.8855\n",
      "Epoch 6/20\n",
      "80531/80531 [==============================] - 17s 207us/step - loss: 0.3170 - acc: 0.8863\n",
      "Epoch 7/20\n",
      "80531/80531 [==============================] - 17s 208us/step - loss: 0.3136 - acc: 0.8882\n",
      "Epoch 8/20\n",
      "80531/80531 [==============================] - 17s 207us/step - loss: 0.3091 - acc: 0.8869\n",
      "Epoch 9/20\n",
      "80531/80531 [==============================] - 17s 207us/step - loss: 0.3032 - acc: 0.8918\n",
      "Epoch 10/20\n",
      "80531/80531 [==============================] - 17s 207us/step - loss: 0.2991 - acc: 0.8906\n",
      "Epoch 11/20\n",
      "80531/80531 [==============================] - 17s 208us/step - loss: 0.2940 - acc: 0.8930\n",
      "Epoch 12/20\n",
      "80531/80531 [==============================] - 17s 208us/step - loss: 0.2975 - acc: 0.8942\n",
      "Epoch 13/20\n",
      "80531/80531 [==============================] - 17s 207us/step - loss: 0.2882 - acc: 0.8943\n",
      "Epoch 14/20\n",
      "80531/80531 [==============================] - 17s 208us/step - loss: 0.2923 - acc: 0.8924\n",
      "Epoch 15/20\n",
      "80531/80531 [==============================] - 17s 207us/step - loss: 0.2894 - acc: 0.8938\n",
      "Epoch 16/20\n",
      "80531/80531 [==============================] - 17s 208us/step - loss: 0.2858 - acc: 0.8939\n",
      "Epoch 17/20\n",
      "80531/80531 [==============================] - 17s 207us/step - loss: 0.2832 - acc: 0.8950\n",
      "Epoch 18/20\n",
      "80531/80531 [==============================] - 17s 208us/step - loss: 0.2834 - acc: 0.8959\n",
      "Epoch 19/20\n",
      "80531/80531 [==============================] - 17s 207us/step - loss: 0.2817 - acc: 0.8951\n",
      "Epoch 20/20\n",
      "80531/80531 [==============================] - 17s 208us/step - loss: 0.2770 - acc: 0.8972\n",
      "0.551126\n",
      "args 0.0746606870447\n",
      "Epoch 1/20\n",
      "80531/80531 [==============================] - 19s 230us/step - loss: 0.4931 - acc: 0.8397\n",
      "Epoch 2/20\n",
      "80531/80531 [==============================] - 17s 205us/step - loss: 0.3763 - acc: 0.8731\n",
      "Epoch 3/20\n",
      "80531/80531 [==============================] - 17s 206us/step - loss: 0.3626 - acc: 0.8803\n",
      "Epoch 4/20\n",
      "80531/80531 [==============================] - 17s 207us/step - loss: 0.3438 - acc: 0.8846\n",
      "Epoch 5/20\n",
      "80531/80531 [==============================] - 17s 209us/step - loss: 0.3403 - acc: 0.8871\n",
      "Epoch 6/20\n",
      "80531/80531 [==============================] - 17s 210us/step - loss: 0.3314 - acc: 0.8856\n",
      "Epoch 7/20\n",
      "80531/80531 [==============================] - 17s 209us/step - loss: 0.3226 - acc: 0.8865\n",
      "Epoch 8/20\n",
      "80531/80531 [==============================] - 17s 207us/step - loss: 0.3266 - acc: 0.8893\n",
      "Epoch 9/20\n",
      "80531/80531 [==============================] - 17s 209us/step - loss: 0.3150 - acc: 0.8895\n",
      "Epoch 10/20\n",
      "80531/80531 [==============================] - 17s 206us/step - loss: 0.3056 - acc: 0.8914\n",
      "Epoch 11/20\n",
      "80531/80531 [==============================] - 17s 209us/step - loss: 0.3064 - acc: 0.8920\n",
      "Epoch 12/20\n",
      "80531/80531 [==============================] - 17s 209us/step - loss: 0.2996 - acc: 0.8932\n",
      "Epoch 13/20\n",
      "80531/80531 [==============================] - 17s 207us/step - loss: 0.2988 - acc: 0.8942\n",
      "Epoch 14/20\n",
      "80531/80531 [==============================] - 17s 208us/step - loss: 0.2906 - acc: 0.8952\n",
      "Epoch 15/20\n",
      "80531/80531 [==============================] - 17s 207us/step - loss: 0.2871 - acc: 0.8966\n",
      "Epoch 16/20\n",
      "80531/80531 [==============================] - 17s 206us/step - loss: 0.2884 - acc: 0.8949\n",
      "Epoch 17/20\n",
      "80531/80531 [==============================] - 17s 207us/step - loss: 0.2813 - acc: 0.8982\n",
      "Epoch 18/20\n",
      "80531/80531 [==============================] - 17s 209us/step - loss: 0.2831 - acc: 0.8986\n",
      "Epoch 19/20\n",
      "80531/80531 [==============================] - 17s 206us/step - loss: 0.2835 - acc: 0.8971\n",
      "Epoch 20/20\n",
      "80531/80531 [==============================] - 17s 207us/step - loss: 0.2801 - acc: 0.8982\n",
      "0.554731\n"
     ]
    }
   ],
   "source": [
    "from hyperopt import hp, Trials, fmin, tpe\n",
    "trials = Trials()\n",
    "best = fmin(objective,\n",
    "    space=hp.uniform('x',0.03,0.1),\n",
    "    algo=tpe.suggest,\n",
    "    max_evals=10,\n",
    "    trials=trials)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 15,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "{'x': 0.04864911065093751}"
      ]
     },
     "execution_count": 15,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "best\n"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 90,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<matplotlib.figure.Figure at 0x7f22f91bc390>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "import matplotlib.pyplot as plt\n",
    "\n",
    "D =(params)\n",
    "\n",
    "plt.bar(range(len(D)), list(D.values()), align='center')\n",
    "plt.xticks(range(len(D)), list(D.keys()),rotation=90)\n",
    "plt.yscale('log',nonposy='clip')\n",
    "# # for python 2.x:\n",
    "# plt.bar(range(len(D)), D.values(), align='center')  # python 2.x\n",
    "# plt.xticks(range(len(D)), D.keys())  # in python 2.x\n",
    "\n",
    "plt.show()"
   ]
  }
 ],
 "metadata": {
  "kernelspec": {
   "display_name": "Python 3",
   "language": "python",
   "name": "python3"
  },
  "language_info": {
   "codemirror_mode": {
    "name": "ipython",
    "version": 3
   },
   "file_extension": ".py",
   "mimetype": "text/x-python",
   "name": "python",
   "nbconvert_exporter": "python",
   "pygments_lexer": "ipython3",
   "version": "3.6.2"
  }
 },
 "nbformat": 4,
 "nbformat_minor": 2
}
